package com.jcli.jb51_net.article._232524碰撞小球;

import javax.swing.*;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;

/**
 * @className: Windows
 * @description: TODO 主窗口
 * @Author: li
 * @Data: 2023/12/23 9:24
 * @Version: 1.0
 **/
public class Windows extends JFrame {
    DrowJPs jp = new DrowJPs();

    public void init() {
        //Java Swing 非常漂亮外观Nimbus的使用方法实例
        try {
            UIManager.setLookAndFeel("com.sun.java.swing.plaf.nimbus.NimbusLookAndFeel");
        } catch (Exception e) {
            e.printStackTrace();
        }
        this.setSize(800, 500);
        this.setLocationRelativeTo(rootPane);
        // this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        // 当关闭窗口时，只会关闭该窗口而不是终止整个程序。
        this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
        this.setTitle("球球");
        this.add(jp);
        this.setVisible(true);
        //窗口置顶
        this.setAlwaysOnTop(true);

        //使用鼠标控制增加球的数量
        DebouncedJButton btn = new DebouncedJButton("增加一个小球", 500);
        DebouncedJButton btn1 = new DebouncedJButton("减少一个小球", 500);
        btn.setBounds(0, 0, 400, 600);
        btn1.setBounds(400, 0, 400, 600);
        this.add(btn);
        this.add(btn1);
        btn.addActionListener(new MyListener());
        btn1.addActionListener(new MyListener1());

        btn.setRolloverEnabled(false); // 禁用鼠标悬停效果
        btn.setBorderPainted(false); // 禁用边框绘制
        btn.setContentAreaFilled(false); // 禁用内容区域填充
        btn1.setRolloverEnabled(false); // 禁用鼠标悬停效果
        btn1.setBorderPainted(false); // 禁用边框绘制
        btn1.setContentAreaFilled(false); // 禁用内容区域填充

        // 为按钮添加鼠标监听器
        /*btn.addMouseListener(new MouseAdapter() {
            @Override
            public void mouseClicked(MouseEvent e) {
                // 检查右键点击事件
                if (SwingUtilities.isRightMouseButton(e)) {
                    // 双击检测
                    if (e.getClickCount() == 2) {
                        // 关闭程序
                        System.exit(0);
                    }
                }
            }
        });*/
    }

    public static void main(String[] args) {
        Windows win = new Windows();
        win.init();
    }
}
